home *** CD-ROM | disk | FTP | other *** search
/ Megahits 5 / Megahits 5 (1994)(GTI - Rhein-Main-Soft)(DE)(Disc 2 of 2)[!].iso / archive / show / supervw_lib_82.lha / superview-lib / Programmers / Example_SVObjects / SVO / svobject.h < prev   
C/C++ Source or Header  |  1994-09-10  |  8KB  |  216 lines

  1.  
  2.  /* svobject.h
  3.     - Include File for SVO.svobject -
  4.     (c) 1990-94 by Andreas R. Kleinert
  5.     Last changes : 07.05.1994
  6.  */
  7.  
  8. #ifndef SVOBJECT_H
  9. #define SVOBJECT_H
  10.  
  11. #ifndef SUPERVIEW_SUPERVIEWBASE_H
  12. #include <superview/superviewbase.h>
  13. #endif  /* SUPERVIEW_SUPERVIEWBASE_H */
  14.  
  15. #ifndef SVOBJECTS_SVOBJECTBASE_H
  16. #include <svobjects/svobjectbase.h>
  17. #endif  /* SVOBJECTS_SVOBJECTBASE_H
  18.  
  19. #ifndef SVDRIVERS_SVDRIVERBASE_H
  20. #include <svdrivers/svdriverbase.h>
  21. #endif  /* SVDRIVERS_SVDRIVERBASE_H
  22.  
  23. #ifndef INTUITION_INTUITIONBASE_H
  24. #include <intuition/intuitionbase.h>
  25. #endif /* INTUITION_INTUITIONBASE_H */
  26.  
  27. #ifndef EXEC_MEMORY_H
  28. #include <exec/memory.h>
  29. #endif /* EXEC_MEMORY_H */
  30.  
  31. #ifndef EXEC_LISTS_H
  32. #include <exec/lists.h>
  33. #endif /* EXEC_LISTS_H */
  34.  
  35. #ifndef EXEC_INTERRUPTS_H
  36. #include <exec/interrupts.h>
  37. #endif /* EXEC_INTERRUPTS_H */
  38.  
  39. #ifndef GRAPHICS_GFXBASE_H
  40. #include <graphics/gfxbase.h>
  41. #endif /* GRAPHICS_GFXBASE_H */
  42.  
  43. #ifndef GRAPHICS_VIEW_H
  44. #include <graphics/view.h>
  45. #endif /* GRAPHICS_VIEW_H */
  46.  
  47. #include <libraries/xpk.h>
  48.  
  49. #include <proto/exec.h>
  50. #include <proto/dos.h>
  51. #include <proto/intuition.h>
  52. #include <proto/graphics.h>
  53. #include <proto/utility.h>
  54. #include <proto/superview.h>
  55. #include <proto/svdrivers.h>
  56. #include <proto/superviewsupport.h>
  57.  
  58.  
  59. #include "svo.h"
  60.  
  61.  
  62. /* *************************************************** */
  63. /* *                             * */
  64. /* * SV_SuperVisor.c : Functions                 * */
  65. /* *                             * */
  66. /* *************************************************** */
  67.  
  68. extern struct SVObjectHandle * __saveds __asm SVO_AllocHandle( register __a1 APTR future_a1);
  69. extern void __saveds __asm SVO_FreeHandle( register __a1 struct SVObjectHandle *SVObjectHandle_a1);
  70. extern void __saveds __asm SVO_CloseDisplay( register __a1 struct SVObjectHandle *SVObjectHandle_a1);
  71. extern void __saveds __asm SVO_FreeResources( register __a1 struct SVObjectHandle *SVObjectHandle_a1);
  72.  
  73.  
  74. /* *************************************************** */
  75. /* *                             * */
  76. /* * SV_WriteSubs.c : ...                            * */
  77. /* *                             * */
  78. /* *************************************************** */
  79.  
  80. extern ULONG __saveds __asm SVO_Write( register __a1 struct SVObjectHandle *SVObjectHandle_a1);
  81.  
  82.  
  83. /* *************************************************** */
  84. /* *                             * */
  85. /* * SV_PackSubs.c : ...                             * */
  86. /* *                             * */
  87. /* *************************************************** */
  88.  
  89. extern ULONG __saveds __stdargs DoPack(BYTE *buffer, BYTE *destbuffer, long lines, long depth, long bpl);
  90.  
  91.  
  92. /* *************************************************** */
  93. /* *                             * */
  94. /* * SV_InfoSubs.c : ...                             * */
  95. /* *                             * */
  96. /* *************************************************** */
  97.  
  98. extern ULONG __saveds __asm SVO_FileInfoRequest( register __a1 struct SVObjectHandle *SVObjectHandle_a1, register __a2 struct Window *window, register __a3 ULONG future);
  99. extern ULONG __saveds __asm SVO_CheckFileType(register __a1 BPTR handle_a1, register __a2 UBYTE *filename, register __a3 APTR future);
  100.  
  101.  
  102. extern void __saveds __stdargs SVLI_SPrintf(APTR buffer, char *formatstring, ...);
  103.  
  104.  
  105. /* *************************************************** */
  106. /* *                             * */
  107. /* * SV_ChangeSubs.c : ...                           * */
  108. /* *                             * */
  109. /* *************************************************** */
  110.  
  111. extern ULONG __saveds __asm SVO_SetAccessMode(  register __a1 struct SVObjectHandle *SVObjectHandle_a1, register __d1 ULONG mode);
  112. extern ULONG __saveds __asm SVO_SetWriteSubType( register __a1 struct SVObjectHandle *SVObjectHandle_a1, register __a2 ULONG akt_type, register __a3 APTR future);
  113. extern ULONG __saveds __asm SVO_SetScreenType( register __a1 struct SVObjectHandle *SVObjectHandle_a1, register __d1 ULONG type, register __a2 APTR future);
  114. extern ULONG __saveds __asm SVO_SetWindowFlags( register __a1 struct SVObjectHandle *SVObjectHandle_a1, register __d1 ULONG flags, register __a2 APTR future);
  115. extern ULONG __saveds __asm SVO_SetWindowIDCMP( register __a1 struct SVObjectHandle *SVObjectHandle_a1, register __d1 ULONG idcmp, register __a2 APTR future);
  116. extern struct Screen * __saveds __asm SVO_GetScreenAddress( register __a1 struct SVObjectHandle *SVObjectHandle_a1, register __a2 APTR future);
  117. extern struct Window * __saveds __asm SVO_GetWindowAddress( register __a1 struct SVObjectHandle *SVObjectHandle_a1, register __a2 APTR future);
  118. extern ULONG __saveds __asm SVO_SetScreenAddress( register __a1 struct SVObjectHandle *SVObjectHandle_a1, register __a2 struct Screen *writescreen, register __a3 APTR future);
  119. extern ULONG __saveds __asm SVO_SetWindowAddress( register __a1 struct SVObjectHandle *SVObjectHandle_a1, register __a2 struct Window *writewindow, register __a3 APTR future);
  120. extern ULONG __saveds __asm SVO_SetReadName( register __a1 struct SVObjectHandle *SVObjectHandle_a1, register __a2 char *readname, register __a3 APTR future);
  121. extern ULONG __saveds __asm SVO_SetWriteName( register __a1 struct SVObjectHandle *SVObjectHandle_a1, register __a2 char *writename, register __a3 APTR future);
  122.  
  123.  
  124. /* *************************************************** */
  125. /* *                             * */
  126. /* * SV_BufferSubs.c : ...                           * */
  127. /* *                             * */
  128. /* *************************************************** */
  129.  
  130. extern ULONG __saveds __asm SVO_ReadToGfxBuffer( register __a1 struct SVObjectHandle *SVObjectHandle_a1);
  131. extern ULONG __saveds __asm SVO_GetGfxBuffer(    register __a1 struct SVObjectHandle *SVObjectHandle_a1,
  132.                                                  register __a2 struct SV_GfxBuffer **bufferhandle,
  133.                                                  register __a3 ULONG future);
  134. extern ULONG __saveds __asm SVO_SetGfxBuffer(    register __a1 struct SVObjectHandle *SVObjectHandle_a1,
  135.                                                  register __a2 struct SV_GfxBuffer *bufferhandle,
  136.                                                  register __a3 ULONG future);
  137.  
  138.  
  139. /* *************************************************** */
  140. /* *                             * */
  141. /* * SV_ShowSubs.c : ...                             * */
  142. /* *                             * */
  143. /* *************************************************** */
  144.  
  145. extern ULONG __saveds __asm SVO_Show( register __a1 struct SVObjectHandle *SVObjectHandle_a1);
  146.  
  147.  
  148. /* *************************************************** */
  149. /* *                             * */
  150. /* * Additional Base Declarations             * */
  151. /* *                             * */
  152. /* *************************************************** */
  153.  
  154. extern struct SVObjectBase  *SVObjectBase;
  155.  
  156. extern struct ExecBase        *SysBase;
  157. extern struct DosLibrary    *DOSBase;
  158. extern struct IntuitionBase *IntuitionBase;
  159. extern struct GfxBase        *GfxBase;
  160. extern struct Library       *UtilityBase;
  161. extern struct Library       *XpkBase;
  162. extern struct SVSupportBase *SVSupportBase;
  163.  
  164.  
  165.  /* some useful Defines */
  166.  
  167. #define ColorAcc(x) (1<<x)
  168.  
  169.  
  170.  /* structures for File-Handling */
  171.  
  172. struct SVObjectHandle                   /* STRICTLY PRIVATE */
  173. {
  174.  BPTR                   ah_filehandle_source;
  175.  BPTR                   ah_filehandle_source2;
  176.  BPTR                   ah_filehandle_dest;
  177.  BPTR                   ah_filehandle_dest2;
  178.  
  179.  char                  *ah_ReadName;
  180.  char                  *ah_WriteName;
  181.  
  182.  struct Screen         *ah_Screen;
  183.  struct Screen         *ah_WriteScreen;
  184.  
  185.  struct Window         *ah_Window;
  186.  struct Window         *ah_WriteWindow;
  187.  
  188.  ULONG                  ah_ScreenType;
  189.  ULONG                  ah_WindowFlags;
  190.  ULONG                  ah_WindowIDCMP;
  191.  
  192.  ULONG                  ah_FileType;           /* SV_FILETYPE_ ... */
  193.  ULONG                  ah_Type;               /* SV_SUBTYPE_  ... */
  194.  ULONG                  ah_WriteMode;          /* SV_SUBTYPE_  ... */
  195.  ULONG                  ah_Medium;             /* AKO_MEDIUM_  ... */
  196.  
  197.  APTR                   ah_ramhandle;
  198.  
  199.  /* For SVO Files */
  200.  
  201.  struct SVOHeader      *ah_SVOHeader;
  202.  APTR                   ah_XpkBuffer;
  203.  ULONG                  ah_XpkBufferSize;
  204.  
  205.  /* For SVDriver Support */
  206.  
  207.  struct SVDriverBase   *ah_DriverBase;  /* Library-Base of svobject.    */
  208.  struct SVD_DriverNode *ah_SVDriver;
  209.  APTR                   ah_SVDriverHandle;
  210.  
  211.  struct SV_GfxBuffer   *ah_SV_GfxBuffer;  /* for read-/write-access   */
  212.  struct SV_GfxBuffer   *ah_SV_GfxBuffer2; /* as source for conversion */
  213. };
  214.  
  215. #endif /* SVOBJECT_H */
  216.